Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour BNP Paribas Open - Indian Wells Wimbledon - London European Open - Brussels Bosnia & Herzegovina F2 Croatia F8 Bosnia/Herzegovina F6 Bosnia/Herzegovina F1 Bosnia & Herzegovina F2 Croatia F7 Croatia F8 Israel F3 Croatia F1 Croatia F2 Italy F6 Italy F7 Bosnia & Herzegovina F2 Bosnia & Herzegovina F3 Bosnia & Herzegovina F5 Serbia F1 Serbia F2 Serbia F3 Serbia F7 Croatia F7 Croatia F8 Croatia F9 Croatia F12 Croatia F13 Croatia F14 Turkey F32 Turkey F33 Turkey F3 Turkey F4 Croatia F1 Italy F1 Italy F2 Bosnia & Herzegovina F1 Bosnia & Herzegovina F2 Bosnia & Herzegovina F3 Bosnia & Herzegovina F5 Italy F20 France F17 Croatia F11 Croatia F12 Turkey F2 France F3 Croatia F1 Croatia F2 France F4 France F5 France F6 Italy F1 France F7 France F8 Italy F5 Bosnia & Herzegovina F4 Serbia F3 France F12 France F13 Belgium F9 France F17 France F18 France F19 France F20 Croatia F12 France F1 France F2 France F3 France F4 Austria F6 France F22 France F24 Greece F10 Kuwait F1 Kuwait F3 France F1 France F2 Tunisia F10 France F8 France F9 Italy F8 Italy F9 France F10 France F13 Kuwait F2 France F15 France F21 Nigeria F5 Dominican Republic F3 Switzerland F2 (Bellevue) France F17 Portugal F7 USA F11 (Calabasas) USA F12 (Memphis) USA F13 (Little Rock) USA F14 (Orange Park) USA F15 (Vero Beach) Nigeria F2 (Abuja) Nigeria F3 (Abuja) France F21 Switzerland F3 M15 Murcia M25+H Lagos M25+H Lagos M15 Monastir M15 Monastir M25 Nonthaburi M15 Monastir M15 Monastir M15 Heraklion M15 Heraklion M15 Monastir M15 Monastir M25 Santo Domingo M25 Santo Domingo M25+H Ajaccio M25 Uriage M25 Denia M25 Muttenz M25 Caslano M25 Sierre M25 Toulouse M25 Sarreguemines M25 Monastir M25 Monastir M25 Gandia Bulgaria F1 France F18 France F11 Croatia F10 M25 Jablonec nad Nisou M25+H Ajaccio M25 Valldoreix Blumenau Challenger Milan Challenger M25 Brazzaville San Marino Challenger Como Challenger Brasov Challenger Trnava Challenger Lermontov Challenger Kosice Challenger M25 Bourg-en-Bresse Poznan Challenger Liberec Challenger Kazan Challenger Banja Luka Challenger Kenitra Challenger Casablanca Challenger Quimper Challenger Irving Challenger Mersin Challenger San Benedetto Challenger Geneva Challenger Morelos Challenger Quimper Challenger Irving Challenger Mestre Challenger Milan Challenger San Benedetto Challenger Portoroz Challenger Alphen Challenger Sibiu Challenger Rome Challenger Mohammedia Challenger Brest Challenger Noumea Challenger Guadalajara Challenger Alphen Challenger Mohammedia Challenger Lisbon Challenger Santo Domingo Challenger Sarajevo Challenger Bordeaux Challenger New Haven Challenger Aix En Provence Challenger BH Indoor Sarajevo - Sarajevo Zadar Challenger Seville Challenger Zagreb Challenger Santo Domingo Challenger Lyon Challenger M15 Monastir Cordenons Challenger Prostejov Challenger Meknes Challenger Moscow Challenger Casablanca Challenger Bordeaux Challenger Rome Challenger Prostejov Challenger Bucaramanga Challenger Tampere Challenger Manerbio Challenger Tashkent Challenger Casablanca Challenger Trnava Challenger Braunschweig Challenger Quimper Challenger Blois Challenger Meknes Challenger Kenitra Challenger Mouilleron-Le-Captif Challenger Helsinki Challenger Fano Challenger Rennes Challenger Quimper Challenger Indian Wells Challenger Le Gosier Challenger Istanbul Challenger Sibiu Challenger Nanchang Challenger Anning Challenger Aix En Provence Challenger Bordeaux Challenger Nigeria F6 Brest Challenger Mouilleron-Le-Captif Challenger Quimper Challenger Banja Luka Challenger Guayaquil Challenger Marburg Challenger Santo Domingo Challenger Marbella Challenger Salzburg-Anif Challenger Savannah Challenger Tallahassee Challenger Tulln Challenger Bucharest Challenger Maia 1 Challenger Lyon Challenger Blois Challenger Cortina Challenger Blois Challenger Cassis Challenger Kobe Challenger Rennes Challenger Seville Challenger Ottignies-Louvain-la-Neuve Challenger Lyon Challenger Tallahassee Challenger Bastad Challenger Istanbul Challenger Szekesfehervar Challenger Tunis Challenger Mouilleron-Le-Captif Challenger Lille Challenger Montemar Challenger Canberra Challenger Luedenscheid Challenger Shenzhen Challenger Cap Cana Challenger Zadar Challenger Roanne Challenger Orleans Challenger Orleans Challenger Forli 2 Challenger Quimper Challenger Helsinki Challenger Santos Challenger Meerbusch Challenger Blois Challenger Sao Paulo Challenger Almaty Challenger Matsuyama Challenger Noumea Challenger Playford Challenger Rennes Challenger Bangkok Challenger Salzburg Challenger Iasi Challenger Mallorca Challenger Arad Challenger Sophia Antipolis Challenger Manama Challenger Aptos Challenger Tampere Challenger Rome 2 Challenger Nottingham 2 Challenger Trieste Challenger Meerbusch Challenger Barcelona Challenger Bergamo Challenger Bratislava Challenger Bordeaux Challenger Pau Challenger Helsinki Challenger Cherbourg Challenger Pau Challenger Gran Canaria Challenger Roseto Degli Abruzzi 1 Challenger Roseto Degli Abruzzi 2 Challenger Lille Challenger Lugano Challenger M25 Brazzaville Morelos Challenger Mauthausen Challenger Tunis Challenger Vilnus Challenger Prostejov Challenger Troyes Challenger St. Brieuc Challenger Cordenons Challenger Brest Challenger Banja Luka Challenger Sibiu Challenger St. Tropez Challenger Brest Challenger Yokohama Challenger Roanne Challenger Aix En Provence Challenger Quimper Challenger Antalya Challenger Maia Challenger Sarasota Challenger Tallahassee Challenger Ostrava Challenger Bergamo Challenger Quimper Challenger Naples Challenger Ningboo Challenger Sarasota Challenger Brazzaville Challenger Ostrava Challenger Savannah Challenger Porto Alegre Challenger Tunis Challenger Bastad Challenger Madrid Challenger Ilkley Challenger Troyes Challenger Aix En Provence Challenger Bordeaux Challenger Aix En Provence Challenger Bratislava Challenger Ann Arbor Challenger Bendigo Challenger Split Challenger Barcelona Challenger Lisbon Challenger Zagreb Challenger Quimper Challenger Oeiras 3 Challenger Rennes Challenger Sibiu Challenger If Stockholm Open - Stockholm Bendigo Challenger Alphen Challenger Winston-Salem Open - Winston-Salem Le Gosier Challenger Bergamo Challenger Lisbon Challenger Banja Luka Challenger Samarkand Challenger M25 Denia Kigali 2 Challenger PBZ Zagreb Indoors - Zagreb Geneva Open - Geneva Santo Domingo Challenger Heilbronn Challenger Padova Challenger Arad Challenger Kosice Challenger Ecuador Open - Quito Memphis Open - Memphis Delray Beach Open - Delray Beach M25 Nonthaburi Abierto Mexicano Telcel - Acapulco Le Gosier Challenger Quimper Challenger BRD Nastase Tiriac Trophy - Bucharest TEB BNP Paribas Istanbul Open - Istanbul SkiStar Swedish Open - Bastad Erste Bank Open - Vienna Le Gosier Challenger Istanbul Challenger Bet-at-home Open - Hamburg Shenzhen Open - Shenzhen San Luis Potosi Challenger Sydney International - Sydney ABN AMRO World Tennis Tournament - Rotterdam Grand Prix Hassan II - Marrakech AEGON Championships - London Plava Laguna Croatia Open - Umag Kremlin Cup - Moscow St. Petersburg Open - St. Petersburg Erste Bank Open - Vienna Qatar ExxonMobil Open - Doha Astana Open - Nur-Sultan Abierto Mexicano Telcel - Acapulco St. Petersburg Open - St. Petersburg Kremlin Cup - Moscow Cherbourg Challenger Sarajevo Challenger Nordea Open - Bastad Hangzhou Open - Hangzhou Studena Croatia Open - Umag Mersin Challenger Grand Prix Hassan II - Casablanca Winston-Salem Open - Winston-Salem Bratislava Challenger Mouilleron-Le-Captif Challenger BRD Nastase Tiriac Trophy - Bucharest SkiStar Swedish Open - Bastad Delray Beach Open - Delray Beach Konzum Croatia Open - Umag Winston-Salem Open - Winston-Salem St. Brieuc Challenger Moselle Open - Metz Lima Challenger Abierto Mexicano - Los Cabos Dubai Duty Free Tennis Championships - Dubai Open Parc - Lyon Antalya Cup - Antalya Abierto Mexicano - Los Cabos Poznan Challenger Troyes Challenger St. Petersburg Open - St. Petersburg Shenzhen Open - Shenzhen Winston-Salem Open - Winston-Salem Kremlin Cup - Moscow Glasgow Challenger Ostrava Challenger Murcia Challenger Anytech365 Andalucia Open - Marbella Poznan Challenger Serbia Open - Belgrade Andria Challenger Firenze Open - Florence Qatar ExxonMobil Open - Doha Millennium Estoril Open - Estoril Plava Laguna Croatia Open - Umag Mercedes Cup - Stuttgart Open Sud de France - Montpellier Bucharest Open - Bucharest Genova Challenger Rio Open - Rio de Janeiro Tiriac Open - Bucharest Kigali 2 Challenger Boss Open - Stuttgart Prague Challenger Zug Challenger Nottingham 1 Challenger Mouilleron-Le-Captif Challenger Cherbourg Challenger Como Challenger Furth Challenger Sarajevo Challenger Brisbane International - Brisbane Credit Agricole Suisse Open - Gstaad Buenos Aires Challenger Kosice Challenger Open 13 - Marseille Izmir Challenger Brazzaville Challenger Kremlin Cup - Moscow Aircel Chennai Open - Chennai Nordea Open - Bastad Biella Challenger Erste Bank Open - Vienna TEB BNP Paribas Istanbul Open - Istanbul Lyon Challenger Ostrava Challenger Bordeaux Challenger Vegeta Croatia Open - Umag Bet-at-home Open - Hamburg Suzhou Challenger Almaty Open - Almaty Kobe Challenger Toyota Challenger Erste Bank Open - Vienna Qatar ExxonMobil Open - Doha Grand Prix Hassan II - Marrakech Garanti Koza Sofia Open - Sofia Winston-Salem Open - Winston-Salem Open de Nice Cote d'Azur - Nice Aegon Nottingham Open - Nottingham Konzum Croatia Open - Umag Braunschweig Challenger Erste Bank Open - Vienna Tampere Challenger Kremlin Cup - Moscow Bratislava Challenger Open Sud de France - Montpellier Bratislava 2 Challenger Garanti Koza Sofia Open - Sofia Memphis Open - Memphis New York Open - New York Dubai Duty Free Tennis Championships - Dubai Forli 5 Challenger Alicante Challenger Hungarian Open - Budapest Mexico City Challenger Blois Challenger TEB BNP Paribas Istanbul Open - Istanbul Tampere Challenger Kenitra Challenger SkiStar Swedish Open - Bastad Rennes Challenger St. Petersburg Open - St. Petersburg Perugia Challenger Como Challenger Erste Bank Open - Vienna Open Sud de France - Montpellier Hamburg European Open - Hamburg Vancouver Challenger Open 13 Provence - Marseille Gazprom Hungarian Open - Budapest Pune Challenger Open Sud de France - Montpellier Savannah Challenger ABN AMRO World Tennis Tournament - Rotterdam Banja Luka Challenger Plava Laguna Croatia Open - Umag Marbella Challenger Belgrade Challenger Geneva Open - Geneva Turkish Airlines Open Antalya - Antalya SkiStar Swedish Open - Bastad Split Challenger Zhuhai Open - Zhuhai China Open - Beijing Open Sud de France - Montpellier Rennes Challenger Abierto Mexicano Telcel - Acapulco Open Sud de France - Montpellier Zug Challenger Rosario Challenger Santo Domingo Challenger Serbia Open - Belgrade Movistar Chile Open - Santiago Plava Laguna Croatia Open - Umag Pau Challenger Lugano Challenger Delray Beach Open - Delray Beach Open 13 Provence - Marseille Prague 2 Challenger Aguascalientes Challenger Blois Challenger Grand Prix Hassan II - Marrakech BMW Open - Munich bett1HULKS Championships - Cologne Istanbul Challenger Lyon Challenger Royan Challenger Qatar ExxonMobil Open - Doha Stockholm Open - Stockholm Bratislava 2 Challenger Banja Luka Open - Banja Luka Brest Challenger Open 13 Provence - Marseille Hamburg Open - Hamburg Ismaning Challenger Helsinki Challenger Roanne Challenger Danderyd Challenger Grand Prix Hassan II - Marrakech Maia Challenger Brest Challenger Kigali 1 Challenger Barletta Challenger Miami Open - Miami Miami Open - Miami Internazionali BNL d'Italia - Rome Miami Open - Miami Nottingham 2 Challenger Lyon Challenger Bonn Challenger PBZ Zagreb Indoors - Zagreb Valencia Open - Valencia Apia International - Sydney Open Parc - Lyon Manacor Challenger Kremlin Cup - Moscow Brisbane International - Brisbane Qatar ExxonMobil Open - Doha Orleans Challenger TEB BNP Paribas Istanbul Open - Istanbul Abierto Mexicano de Tenis Mifel - Los Cabos Girona Challenger Cherbourg Challenger ABN AMRO World Tennis Tournament - Rotterdam Vilnius Challenger Cherbourg Challenger Lille Challenger Heilbronn Challenger Bratislava 1 Challenger Prague 3 Challenger Belgrade Open - Belgrade Adelaide International - Adelaide Barcelona Open Banc Sabadell - Barcelona Canberra Challenger Noumea Challenger Phoenix Challenger Hellenic Championship - Athens San Luis Potosi Challenger Troyes Challenger Kigali 1 Challenger Grodzisk Mazowiecki Challenger Astana Open - Astana Open Occitanie - Montpellier Shanghai Rolex Masters - Shanghai Sony Open Tennis - Miami BNP Paribas Open - Indian Wells Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome BNP Paribas Open - Indian Wells Open Sud de France - Montpellier Internazionali BNL d'Italia - Rome Shanghai Rolex Masters - Shanghai Aircel Chennai Open - Chennai Stockholm Open - Stockholm Mutua Madrid Open - Madrid BNP Paribas Masters - Paris EFG Swiss Open - Gstaad BNP Paribas Open - Indian Wells Miami Open - Miami Mutua Madrid Open - Madrid Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris Western & Southern Open - New York Internazionali BNL d'Italia - Rome Hangzhou Open - Hangzhou Japan Open Tennis Championships - Tokyo Dubai Duty Free Tennis Championships - Dubai Internazionali BNL d'Italia - Rome Open 13 Provence - Marseille BNP Paribas Open - Indian Wells Miami Open - Miami Rolex Paris Masters - Paris BNP Paribas Open - Indian Wells Rogers Cup - Toronto BNP Paribas Open - Indian Wells Miami Open - Miami Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai Monte-Carlo Rolex Masters - Monte-Carlo BNP Paribas Open - Indian Wells Monte-Carlo Rolex Masters - Monte-Carlo Western & Southern Open - Cincinnati Monte-Carlo Rolex Masters - Monte-Carlo Shanghai Rolex Masters - Shanghai Miami Open - Miami National Bank Open - Toronto Cincinnati Open - Cincinnati Mutua Madrid Open - Madrid Moselle Open - Metz Moselle Open - Metz China Open - Beijing German Tennis Championships - Hamburg Rakuten Japan Open - Tokyo Qatar ExxonMobil Open - Doha Open 13 Provence - Marseille Dubai Duty Free Tennis Championships - Dubai Wimbledon - London U.S. Open - New York Australian Open - Melbourne U.S. Open - New York Australian Open - Melbourne U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris Australian Open - Melbourne Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris French Open - Paris Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris U.S. Open - New York Wimbledon - London French Open - Paris U.S. Open - New York Wimbledon - London French Open - Paris U.S. Open - New York Australian Open - Melbourne Wimbledon - London Australian Open - Melbourne U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris U.S. Open - New York Australian Open Qualifying - Doha Australian Open - Melbourne Wimbledon - London Internazionali BNL d'Italia - Rome U.S. Open - New York French Open - Paris BNP Paribas Masters - Paris Argentina Open - Buenos Aires Internazionali BNL d'Italia - Rome Mallorca Championships - Mallorca Wimbledon - London Australian Open - Melbourne Roanne Challenger Davis Cup, Group II, 3R, DEN-BIH 3-2 Davis Cup, Group II, 2R, FIN-BIH 2-3 Davis Cup, Group I, 2R, SVK-BIH 2-3 Davis Cup, World Group I, PO, BIH-RSA 3-1 Davis Cup, World Group, PO, SWE-BIH 3-1 Wimbledon (juniors) U.S. Open (juniors) All Lower level tournaments Davis Cup, Group II, 3R, BIH-LTU 2-3 Davis Cup, World Group, QR, AUS-BIH 4-0 Davis Cup, Group I, 1R, PER-BIH 3-2 Davis Cup, Group I, 1R, BIH-POL 5-0 Davis Cup, Group II, 2R, BLR-BIH 4-1 Davis Cup, Group II, 3R, LTU-BIH 0-5 Davis Cup, Group II, 1R, BIH-GRE 3-1 Davis Cup, World Group I, 1R, TPE-BIH 3-2 Davis Cup, Europe/Africa Group II, 2R, EST-BIH 2-3 Davis Cup, Europe/Africa Group II, 3R, POR-BIH 3-2 Davis Cup, Group II, 1R, BIH-LUX 4-1 Davis Cup, Group II, 2R, BIH-MDA 1-3 Davis Cup, Group II, 1R, ZIM-BIH 1-4 Davis Cup, Group I, 1R, ECU-BIH 3-2 Davis Cup, Group I, PO, TUN-BIH 1-3 Davis Cup, Group I, 1R, BIH-MEX 3-1 Davis Cup, Group I, 1R, BIH-GER 0-4 Davis Cup, Group I, PO, BUL-BIH 1-3 Davis Cup, Group I, PO, UZB-BIH 1-3 Davis Cup, Group II, 2R, BIH-TUR 3-1 Davis Cup, Group I, 2R, BIH-NED 1-3 Olympics - Rio de Janeiro French Open (juniors) French Open (juniors) Manacor Challenger Mouilleron-Le-Captif Challenger Japan Open Tennis Championships - Tokyo